package chapter15;

public class sort5 {
    public static void main(String[] args) {
        //判断1~100000之间有多少个质数
        long start = System.currentTimeMillis();

        for (int i = 1; i <= 100000; i++) {
            boolean flag = isPrime2(i);
            if (flag) {
                System.out.println(i);
            }
        }
        long end = System.currentTimeMillis();
        //获取程序运行的总时间
        System.out.println(end - start); //方式一：1514 毫秒 方式二：71毫秒
        }

        //以前判断是否为质数的方式
        public static boolean isPrime1(int number) {
            for (int i = 2; i < number; i++) {
                if (number % i == 0) {
                    return false;
                }
            }
            return true;
        }

        //改进之后判断是否为质数的方式（效率高）
        public static boolean isPrime2(int number) {
            for (int i = 2; i <= Math.sqrt(number); i++) {
                if (number % i == 0) {
                    return false;
                }
            }
            return true;
        }
}
